package com.ruoyi.business.mapper;

import java.util.List;
import com.ruoyi.business.domain.Content;
import io.lettuce.core.dynamic.annotation.Param;

/**
 * ContentMapper接口
 *
 * @author win
 * @date 2021-06-14
 */
public interface ContentMapper
{
    /**
     * 查询Content
     *
     * @param id ContentID
     * @return Content
     */
    public Content selectContentById(Long id);

    /**
     * 查询Content列表
     *
     * @param content Content
     * @return Content集合
     */
    public List<Content> selectContentList(Content content);

    public List<Content> selectAuditContentList(Content content);

    /**
     * 新增Content
     *
     * @param content Content
     * @return 结果
     */
    public int insertContent(Content content);

    /**
     * 修改Content
     *
     * @param content Content
     * @return 结果
     */
    public int updateContent(Content content);

    /**
     * 删除Content
     *
     * @param id ContentID
     * @return 结果
     */
    public int deleteContentById(Long id);

    /**
     * 批量删除Content
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteContentByIds(Long[] ids);

    /**
     * 依据栏目ids查询所属的内容
     * @param categoryIds
     * @return
     */
    List<Content> selectContentListByCategoryIds(List<Long> categoryIds);

    /**
     * 依据栏目ids查询所属的内容,并限制内容数量
     * @param categoryIds
     * @param limit
     * @return
     */
    List<Content> selectContentListByCategoryIdsAndLimit(@Param("categoryIds") List<Long> categoryIds,
                                                         @Param("limit") Integer limit);

    /**
     * 根据部门id获取内容
     * @param departId
     * @return
     */
    List<Content> selectContentListByDepartId(Long departId);
}
